package com.sanshi.project.admin.api.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 出入库申请单
 *
 * @author nikon
 * @date 2023-12-10 15:54:35
 */
@Data
@TableName("procure_apply_details")
@EqualsAndHashCode(callSuper = true)
@Schema(description = "procure_apply_details")
public class ProcureApplyDetailsEntity extends Model<ProcureApplyDetailsEntity> {

	/**
	* 主键
	*/
	@TableId(type = IdType.ASSIGN_ID)
	@Schema(description="主键")
   private Long id;
	/**
	* 租户号
	*/
	@Schema(description="租户号")
   private Long tenantId;
	/**
	* 删除标记[0未删除，1已删]
	*/
  @TableLogic
	@TableField(fill = FieldFill.INSERT)
	@Schema(description="删除标记[0未删除，1已删]")
   private String delFlag;
	/**
	* 创建人
	*/
	@TableField(fill = FieldFill.INSERT)
	@Schema(description="创建人")
   private String createBy;
	/**
	* 创建时间
	*/
	@TableField(fill = FieldFill.INSERT)
	@Schema(description="创建时间")
   private LocalDateTime createTime;
	/**
	* 更新人
	*/
	@TableField(fill = FieldFill.INSERT_UPDATE)
	@Schema(description="更新人")
   private String updateBy;
	/**
	* 更新时间
	*/
	@TableField(fill = FieldFill.INSERT_UPDATE)
	@Schema(description="更新时间")
   private LocalDateTime updateTime;
	/**
	* 出入库类型
	*/
	@Schema(description="出入库类型")
   private String inOrOut;
	/**
	* 入库/出库方式
	*/
	@Schema(description="入库/出库方式")
   private String inOrOutMethod;
	/**
	* 申请单id
	*/
	@Schema(description="申请单id")
   private Long applyId;
	/**
	* 物品id
	*/
	@Schema(description="物品id")
   private Long goodsId;
	/**
	* 物品编码
	*/
	@Schema(description="物品编码")
   private String goodsCode;
	/**
	* 物品类型
	*/
	@Schema(description="物品类型")
   private Long goodsType;
	/**
	* 物品名称
	*/
	@Schema(description="物品名称")
   private String goodsName;
	/**
	* 物品供应商
	*/
	@Schema(description="物品供应商")
   private Long vendorId;
	/**
	* 物品仓库
	*/
	@Schema(description="物品仓库")
   private String warehouseId;
	/**
	* 申请数量
	*/
	@Schema(description="申请数量")
   private Integer applyNum;
	/**
	* 物品单价
	*/
	@Schema(description="物品单价")
   private BigDecimal purchasePrice;
	/**
	* 物品总价
	*/
	@Schema(description="物品总价")
   private BigDecimal goodsSum;
	/**
	* 当前物品库存
	*/
	@Schema(description="当前物品库存")
   private Integer goodsInventory;
	/**
	* 已出入库总数量
	*/
	@Schema(description="已出入库总数量")
   private Integer inOutSum;
	/**
	* 调入仓库
	*/
	@Schema(description="调入仓库")
   private Long tunedWarehouseId;
	/**
	* 状态
	*/
	@Schema(description="状态")
   private String status;
	/**
	* 备注
	*/
	@Schema(description="备注")
   private String remark;
}
